今天來帶大家了解一下 NiFi 原生的 Monitoring 是怎麼運作的,像是 Disk, Memory 等,然後如何去做一個警示,這些都會在今天做一個簡單的介紹。
Reporting Task 是 NiFi 在做一個 Monitoring 機制時很重要的 Componenet,這邊簡單列一下他的特性:
從上述的特性,其實就是跟『監控機制』有所關聯,無論機器狀態或資料狀態,甚至要呈現相關 Metrics 的服務也可以有所自訂。
這邊就快速地帶大家知道如何去做設定,首先我們一樣先回到主畫面,點選 Global Menu
的 Controller Settings
:
接著點選 REPORTING TASKS
,就可以加入對應的 Component:
這邊我們來加入最基本的 MonitoringDiskUsage
和 MonitoringMemory
兩種 Reporting Task:
先來看一下 MonitoringDiskUsage
的設定:
我們可以看到有三種設定的方式:
接著來看一下 MonitoringMemory
的設定:
一樣有幾個設定方式:
MonitoringDiskUsage
一樣的設定,達到多少比例做 Alerting。這邊就帶幾個基本常用的 Reporting Task,這時你可能會問,當我設定好且啟動了,假如真的有跳通知,我應該要去哪裡看呢?接下來就要待到下一個主角 - Bulletin Board
Bulletin Board 是 NiFi 原生的用來看一些 Alerting 的訊息,可以想像只要有任何 Alerting 的時候,他就會在這裡呈現相關資訊。我們一樣在 Global Menu
點選 Bulletin Board
:
接著即可看到 Bulletin Board,沒有訊息時就會是這樣一片白:
但如果有 Alerting 跳出來時(ex. 某一個 Folder 的使用量大過我們設定的 Threshold),就可以看到相關資訊:
如此一來就能接受到我們在 NiFi 做設定好的監控,是不是很簡單?
你可能會想再問,這個訊息能否透過 Slack 或其他第三方服務來做通知呢?答案是可以的,只是我們就要透過 NiFi API
以及設計對應的 Pipeline 來做處理,這邊我會在後續獨立寫一篇場景應用來做介紹,可以敬請期待!
今天這篇其實看似沒什麼重點,但其實對於 Production 環境上,尤其有多個 Data Pipeline 來運行時,當中的監控就會顯得格外重要,所以這些簡單的設定都可以幫助未來我們在做使用時,可以快速找到問題且去做一個排查的動作。
明天,我會先來帶到 Variables 和 Parameters 的概念,這對於在 FlowFiles 的處理上是十分重要的運用,千萬要留意跟好好學習喔!